import os

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "about_orm.settings")
import django

django.setup()

from app01 import models

# all  获取所有的数据  QuerySet  对象列表
ret = models.Person.objects.all()

# get  获取一个满足条件的数据    存在且唯一   对象
ret = models.Person.objects.get(pk=1)

# filter  获取所有满足条件的数据  QuerySet  对象列表
ret = models.Person.objects.filter(pk=100)

# exclude 获取所有不满足条件的数据  QuerySet  对象列表
ret = models.Person.objects.exclude(pk=100)

# order_by  按照字段进行排序  QuerySet  对象列表  默认升序  -降序
ret = models.Person.objects.all().order_by('age','-pid')


# reverse  对一个已经排序QuerySet进行翻转 倒叙
ret = models.Person.objects.all().order_by('age','-pid').reverse()

# values()  获取对象的字段名和字段值   没有参数 所有字段    QuerySet
#   有参数 获取指定字段
ret= models.Person.objects.all().values('pid','name')

# values_list()  获取对象的字段值   没有参数 所有字段    QuerySet
#   有参数 获取指定字段
ret= models.Person.objects.all().values_list('name','pid',)


# distinct  去重
ret = models.Person.objects.values('age').distinct()

# count()  计数
ret = models.Person.objects.all().count()

# first  last  获取第一个或最后一个元素  获取不到就是none
ret = models.Person.objects.all().last()

# exists  判断数据是否存在  布尔值
ret = models.Person.objects.filter(pk=100).exists()

"""
返回queryset 
all
filter
exclude
values   {}
values_list   ()
order_by
reverse 
distinct 

返回对象
get  
first
last 

返回布尔值
exists

返回数字
count
"""


